home *** CD-ROM | disk | FTP | other *** search
/ Amiga Magazin: Amiga-CD 1997 September & October / Amiga-CD 1997 #9-10.iso / aminet / mui_3.3 / install / install-mui < prev    next >
Text File  |  1995-11-26  |  16KB  |  705 lines

  1. ; $VER: Install-MUI 3.0 (05.10.95)
  2. ; Script to install MagicUserInterface Release 3
  3.  
  4. (complete 0)
  5.  
  6.  
  7.  
  8. ;=============================================================================
  9. ; German strings
  10.  
  11. (if (= @language "deutsch")
  12. (
  13.  
  14. (set #intro
  15. (cat "Mit diesem Programm wird Version 3 von MagicUserInterface im "
  16.         "System installiert. Bereits vorhandene Versionen von MUI werden "
  17.      "ersetzt. MUI 3 ist abwärtskompatibel mit alten Versionen, alle "
  18.      "sauber geschriebenen MUI Programme werden weiter funktionieren "
  19.      "und automatisch von den neuen Features profitieren."
  20. ))
  21.  
  22. (set #oldmui "\nEs existiert eine alte Version von MUI im Verzeichnis ")
  23.  
  24. (set #oldmuibak
  25. (cat "Das Installationsprogramm wird dieses Verzeichnis umbenennen in "
  26.      "'MUI_old' und für MUI 3 ein neues Verzeichnis erstellen. Alle "
  27.      "Dateien aus der alten Installation bleiben erhalten."
  28.      "\n\nWenn Ihnen MUI 3 gefällt, sollten Sie das 'MUI_old' nach "
  29.      "einiger Zeit löschen."
  30. ))
  31.  
  32. (set #oldmuidel
  33. (cat "Außerdem wurde eine Sicherheitkopie ('MUI_old') einer früheren "
  34.      "MUI Installation gefunden. Es wird angenommen, daß diese Kopie "
  35.      "aktuell ist, deswegen wird keine neue mehr angelegt. "
  36.      "Falls Sie fortfahren, werden demnach alle Dateien im Verzeichnis "
  37. ))
  38.  
  39. (set #oldmuidel2 "gelöscht und ersetzt.")
  40.  
  41. (set #destdir
  42. (cat "Bitte wählen Sie einen Platz für MUI 3. "
  43.      "Ein Verzeichnis namens 'MUI' wird automatisch erzeugt. "
  44.      "Der minimale Platzbedarf beträgt 500 kB, "
  45.      "eine Komplett-Installation benötigt etwa 2.5 MB."
  46. ))
  47.  
  48. (set #destexists
  49. (cat "Im gewählten Zielverzeichnis existiert bereits eine MUI-Schublade. "
  50.      "Wenn Sie fortfahren, wird der Inhalt dieser Schublade gelöscht und "
  51.      "durch die neuen Dateien ersetzt."
  52. ))
  53.  
  54. (set #guideask
  55. (cat "Bitte wählen Sie die Sprache(n) für die AmigaGuide Dokumentation aus. "
  56.      "Diese wird unter anderem für die Online-Hilfe im Voreinsteller und "
  57.      "Screen Manager benötigt."
  58. ))
  59.  
  60. (set #dviask
  61. (cat "Bitte wählen Sie die Sprache(n) für die DVI Dokumentation aus. "
  62.      "DVI Dokumentationen werden hauptsächlich zum Ausdrucken benötigt."
  63. ))
  64.  
  65. (set #imgask
  66. (cat "Wählen Sie die zusätzlichen Image-Pakete aus, die Sie installieren möchten."
  67. ))
  68.  
  69. (set #nainfo1 "Mit")
  70. (set #nainfo2 "(n/a)")
  71. (set #nainfo3 "markierte Elemente sind aus Platzmangel im aktuellen Installations-Archiv nicht verfügbar.")
  72.  
  73. (set #copydoc1 "Kopiere")
  74. (set #copydoc2 "Dokumentation")
  75.  
  76. (set #copydoc3
  77. (cat "ist im aktuellen Installations-Archiv nicht verfügbar, sie "
  78.      "wurden aus Platzmangel weggelassen. MUI benötigt diese "
  79.      "Dateien nicht zur korrekten Funktion."
  80. ))
  81.  
  82. ))
  83.  
  84.  
  85.  
  86. ;=============================================================================
  87. ; English strings
  88.  
  89. (if (= @language "english")
  90. (
  91.  
  92. (set #intro
  93. (cat "This program lets you install release 3 of MagicUserInterface "
  94.         "on your system. It can be used to upgrade an older release or to "
  95.      "install from scratch. MUI 3 is backwards compatible with previous "
  96.      "versions, all properly written MUI applications will continue to "
  97.      "work and will automatically benefit from several new features."
  98. ))
  99.  
  100. (set #oldmui "\nThere is already a version of MUI installed in the directory ")
  101.  
  102. (set #oldmuibak
  103. (cat "The installer program will rename this directory away to "
  104.      "'MUI_old' and create a different directory for the new MUI 3 "
  105.      "installation. No files of your old installation will be overwritten."
  106.      "\n\nYou should delete the 'MUI_old' directory after you have given "
  107.      "MUI 3 a try and decided that you like it!"
  108. ))
  109.  
  110. (set #oldmuidel
  111. (cat "Furthermore, a backup of a previously installed MUI was found. "
  112.      "The installation utility assumes that this backup is current "
  113.      "and will not backup your MUI installation again. If you proceed, "
  114.      "all the files in the directory"
  115. ))
  116.  
  117. (set #oldmuidel2 "will be deleted and updated.")
  118.  
  119. (set #destdir
  120. (cat "Please select a place for the MUI 3 package. "
  121.      "A drawer called 'MUI' will be created here. "
  122.      "The minimum space required is about 500 kB, "
  123.      " a complete installation takes 2.5 MB."
  124. ))
  125.  
  126. (set #destexists
  127. (cat "A MUI drawer does already exists in your selected destination directory. "
  128.      "By proceeding, you indicate that you wish to delete the "
  129.      "contents of this drawer and replace them with the new "
  130.      "installation."
  131. ))
  132.  
  133. (set #guideask
  134. (cat "Select the language(s) of AmigaGuide documentations you wish "
  135.      "to install. You must choose at least one language if you want "
  136.      "to use online help with the MUI preferences programs."
  137. ))
  138.  
  139. (set #dviask
  140. (cat "Select the language(s) of DVI documentations you wish "
  141.      "to install. DVI docs are mainly useful for printing."
  142. ))
  143.  
  144. (set #imgask
  145. (cat "Select the image set(s) you wish to install."
  146. ))
  147.  
  148. (set #nainfo1 "Items marked as")
  149. (set #nainfo2 "(n/a)")
  150. (set #nainfo3 "are not available in the current installation archive due to space considerations.")
  151.  
  152. (set #copydoc1 "Copying")
  153. (set #copydoc2 "documenation")
  154.  
  155. (set #copydoc3
  156. (cat "is not present in the current installation archive. "
  157.      "It has probably been left out due to space considerations. "
  158.      "However, MUI will run fine without those files."
  159. ))
  160.  
  161. ))
  162.  
  163.  
  164.  
  165. ;=============================================================================
  166. ; procedure COPYDOC
  167. ;
  168. ; cd_language - language
  169. ; cd_name     - "MUI.guide" or "MUI.dvi"
  170.  
  171. (procedure COPYDOC
  172. (
  173.     (set cdsrc (cat "/Docs/" cd_language "/" cd_name))
  174.     (set cddst (tackon (tackon destination "Docs") cd_language))
  175.  
  176.     (if (<> (exists cdsrc (noreq)) 0)
  177.     (
  178.         (run (cat "copy " "/Docs/" cd_language ".info " (cat cddst ".info") ))
  179.  
  180.         (copyfiles
  181.             (prompt (cat #copydoc1 " " cd_language " " cd_name " " #copydoc2 "..."))
  182.             (source cdsrc)
  183.             (dest cddst)
  184.             (infos)
  185.             (help @copyfiles-help)
  186.         )
  187.     )
  188.     (
  189.         (message cd_name " (" cd_language ") " #copydoc3)
  190.     ))
  191. ))
  192.  
  193.  
  194.  
  195. ;=============================================================================
  196. ; procedure COPYIMAGEDIR
  197. ;
  198. ; ci_dir - image dir name
  199.  
  200. (procedure COPYIMAGEDIR
  201. (
  202.     (set cdsrc (cat "/Images/" ci_dir))
  203.     (set cddst (tackon (tackon destination "Images") ci_dir))
  204.  
  205.     (if (<> (exists cdsrc (noreq)) 0)
  206.     (
  207.         (copyfiles
  208.             (prompt (cat #copydoc1 " " ci_dir "..."))
  209.             (source cdsrc)
  210.             (dest cddst)
  211.             (all)
  212.             (help @copyfiles-help)
  213.         )
  214.     )
  215.     (
  216.         (message ci_dir " " #copydoc3)
  217.     ))
  218. ))
  219.  
  220.  
  221.  
  222. ;=============================================================================
  223. ; Say hello
  224.  
  225. (set @default-dest "SYS:")
  226. (message #intro)
  227.  
  228.  
  229.  
  230. ;=============================================================================
  231. ; Check for an old MUI installation
  232.  
  233. (complete 4)
  234.  
  235. (if (<> (exists "mui:" (noreq)) 0)
  236. (
  237.     (set @default-dest (expandpath "mui:/"))
  238.     (set muidir (tackon @default-dest "MUI"))
  239.     (set olddir (tackon @default-dest "MUI_old"))
  240.  
  241.     (run "assign mui: remove")
  242.  
  243.     (if (<> (exists olddir (noreq)) 0)
  244.     (
  245.         (message #oldmui "'" @default-dest "'. " #oldmuidel " '" muidir "' " #oldmuidel2)
  246.         (run (cat "delete " muidir " all >nil:"))
  247.         (run (cat "delete " muidir ".info >nil:"))
  248.     )
  249.     (
  250.         (message #oldmui "'" @default-dest "'." #oldmuibak)
  251.         (rename muidir olddir)
  252.         (rename (cat muidir ".info") (cat olddir ".info"))
  253.     ))
  254. ))
  255.  
  256.  
  257.  
  258. ;=============================================================================
  259. ; Ask for destination directory
  260.  
  261. (set @default-dest
  262.     (askdir
  263.         (prompt #destdir)
  264.         (help @askdir-help)
  265.         (default @default-dest)
  266.     )
  267. )
  268.  
  269. (set @default-dest (expandpath @default-dest))
  270. (set destination (tackon @default-dest "MUI"))
  271.  
  272. (if (<> (exists destination) 0)
  273. (
  274.     (message #destexists)
  275.     (run (cat "delete " destination " all >nil:"))
  276.     (run (cat "delete " destination ".info >nil:"))
  277. ))
  278.  
  279.  
  280.  
  281. ;=============================================================================
  282. ; Lets go, create destination directory, copy main files and libs
  283.  
  284. (complete 4)
  285.  
  286. (makedir destination (help @makedir-help))
  287. (run (cat "copy " "//MUI.info \"" destination ".info\""))
  288.  
  289. (complete 8)
  290.  
  291. (copyfiles
  292.     (prompt "Copying main files...")
  293.     (source "/")
  294.     (pattern "(ReadMe|LiesMich|MUI|PSI)")
  295.     (dest destination)
  296.     (infos)
  297.     (help @copyfiles-help)
  298. )
  299.  
  300. (complete 12)
  301.  
  302. (copyfiles
  303.     (prompt "Copying libraries and classes...")
  304.     (source "/Libs")
  305.     (all)
  306.     (dest (tackon destination "Libs"))
  307.     (infos)
  308.     (help @copyfiles-help)
  309. )
  310. (run (cat "copy " "/Libs.info \"" destination "\""))
  311.  
  312.  
  313. ;=============================================================================
  314. ; Icons Drawer
  315.  
  316. (complete 16)
  317.  
  318. (if (<> (exists "/Icons" (noreq)) 0)
  319. (
  320.     (copyfiles
  321.         (prompt "Copying default icons...")
  322.         (source "/Icons")
  323.         (dest (tackon destination "Icons"))
  324.         (all)
  325.         (infos)
  326.         (help @copyfiles-help)
  327.     )
  328.     (run (cat "copy " "/Icons.info \"" destination "\""))
  329. )
  330. )
  331.  
  332.  
  333. ;=============================================================================
  334. ; Docs Drawer
  335.  
  336. (complete 20)
  337.  
  338. (if (<> (exists "/Docs" (noreq)) 0)
  339. (
  340.     (copyfiles
  341.         (prompt "Creating Docs Drawer...")
  342.         (source "/Docs")
  343.         (dest (tackon destination "Docs"))
  344.         (choices "Registration" "Changes" "ImageDesign" "Preview")
  345.         (infos)
  346.         (help @copyfiles-help)
  347.     )
  348.     (run (cat "copy " "/Docs.info \"" destination "\""))
  349.  
  350.     (if (<> (exists "/Docs/English/MUI.guide") 0)
  351.     ((set guide_english "English") (if (= @language "English") ((set defchoice 1))) )
  352.     ((set guide_english (cat "English " #nainfo2))))
  353.  
  354.     (if (<> (exists "/Docs/Deutsch/MUI.guide") 0)
  355.     ((set guide_german "Deutsch") (if (= @language "Deutsch") ((set defchoice 2))) )
  356.     ((set guide_german (cat "Deutsch " #nainfo2))))
  357.  
  358.     (if (<> (exists "/Docs/Français/MUI.guide") 0)
  359.     ((set guide_french "Français") (if (= @language "Français") ((set defchoice 4))) )
  360.     ((set guide_french (cat "Français " #nainfo2))))
  361.  
  362.     (set choice
  363.         (askoptions
  364.             (prompt (cat #guideask " " #nainfo1 " " #nainfo2 " " #nainfo3))
  365.             (choices guide_english guide_german guide_french)
  366.             (default defchoice)
  367.             (help @askoptions-help)
  368.         )
  369.     )
  370.  
  371.     (set cd_name "MUI.guide")
  372.  
  373.     (complete 24)
  374.  
  375.     (if (<> 0 (BITAND choice 1))
  376.     (
  377.         (set cd_language "English")
  378.         (COPYDOC)
  379.     ))
  380.  
  381.     (complete 28)
  382.  
  383.     (if (<> 0 (BITAND choice 2))
  384.     (
  385.         (set cd_language "Deutsch")
  386.         (COPYDOC)
  387.     ))
  388.  
  389.     (complete 32)
  390.  
  391.     (if (<> 0 (BITAND choice 4))
  392.     (
  393.         (set cd_language "Français")
  394.         (COPYDOC)
  395.     ))
  396.  
  397.     (complete 36)
  398.  
  399.     (if (<> (exists "/Docs/English/MUI.dvi") 0)
  400.     ((set dvi_english "English"))
  401.     ((set dvi_english (cat "English " #nainfo2))))
  402.  
  403.     (if (<> (exists "/Docs/Deutsch/MUI.dvi") 0)
  404.     ((set dvi_german "Deutsch"))
  405.     ((set dvi_german (cat "Deutsch " #nainfo2))))
  406.  
  407.     (if (<> (exists "/Docs/Français/MUI.dvi") 0)
  408.     ((set dvi_french "Français"))
  409.     ((set dvi_french (cat "Français " #nainfo2))))
  410.  
  411.     (set choice
  412.         (askoptions
  413.             (prompt (cat #dviask " " #nainfo1 " " #nainfo2 " " #nainfo3))
  414.             (choices dvi_english dvi_german dvi_french)
  415.             (default defchoice)
  416.             (help @askoptions-help)
  417.         )
  418.     )
  419.  
  420.     (set cd_name "MUI.dvi")
  421.  
  422.     (complete 40)
  423.  
  424.     (if (<> 0 (BITAND choice 1))
  425.     (
  426.         (set cd_language "English")
  427.         (COPYDOC)
  428.     ))
  429.  
  430.     (complete 44)
  431.  
  432.     (if (<> 0 (BITAND choice 2))
  433.     (
  434.         (set cd_language "Deutsch")
  435.         (COPYDOC)
  436.     ))
  437.  
  438.     (complete 48)
  439.  
  440.     (if (<> 0 (BITAND choice 4))
  441.     (
  442.         (set cd_language "Français")
  443.         (COPYDOC)
  444.     ))
  445. )
  446. )
  447.  
  448.  
  449.  
  450. ;=============================================================================
  451. ; Images Drawer
  452.  
  453. (complete 52)
  454.  
  455. (if (<> (exists "/Images" (noreq)) 0)
  456. (
  457.     (if (<> (exists "/Images/XEN") 0)
  458.     ((set img_xen "Martin 'MagicWB' Huttenloher"))
  459.     ((set img_xen (cat "Martin 'MagicWB' Huttenloher " #nainfo2))))
  460.  
  461.     (if (<> (exists "/Images/Goonie") 0)
  462.     ((set img_goonie "Andreas 'Goonie' Schildbach"))
  463.     ((set img_goonie (cat "Andreas 'Goonie' Schildbach " #nainfo2))))
  464.  
  465.     (if (<> (exists "/Images/KT") 0)
  466.     ((set img_kt "Christian 'Kochtopf' Scholz"))
  467.     ((set img_kt (cat "Christian 'Kochtopf' Scholz " #nainfo2))))
  468.  
  469.     (if (<> (exists "/Images/WD") 0)
  470.     ((set img_wd "Walter Dörwald"))
  471.     ((set img_wd (cat "Walter Dörwald " #nainfo2))))
  472.  
  473.     (if (<> (exists "/Images/kmel") 0)
  474.     ((set img_kmel "Klaus 'kmel' Melchior"))
  475.     ((set img_kmel (cat "Klaus 'kmel' Melchior " #nainfo2))))
  476.  
  477.     (set choice
  478.         (askoptions
  479.             (prompt (cat #imgask " " #nainfo1 " " #nainfo2 " " #nainfo3))
  480.             (choices img_xen img_goonie img_kt img_wd img_kmel)
  481.             (help @askoptions-help)
  482.         )
  483.     )
  484.  
  485.     (complete 56)
  486.  
  487.     (makedir (tackon destination "Images"))
  488.     (run (cat "copy " "/Images.info \"" destination "\""))
  489.  
  490.     (complete 60)
  491.  
  492.     (if (<> 0 (BITAND choice 1))
  493.     (
  494.         (set ci_dir "XEN")
  495.         (COPYIMAGEDIR)
  496.     ))
  497.  
  498.     (complete 64)
  499.  
  500.     (if (<> 0 (BITAND choice 2))
  501.     (
  502.         (set ci_dir "Goonie")
  503.         (COPYIMAGEDIR)
  504.     ))
  505.  
  506.     (complete 68)
  507.  
  508.     (if (<> 0 (BITAND choice 4))
  509.     (
  510.         (set ci_dir "KT")
  511.         (COPYIMAGEDIR)
  512.     ))
  513.  
  514.     (complete 72)
  515.  
  516.     (if (<> 0 (BITAND choice 8))
  517.     (
  518.         (set ci_dir "WD")
  519.         (COPYIMAGEDIR)
  520.     ))
  521.  
  522.     (complete 76)
  523.  
  524.     (if (<> 0 (BITAND choice 16))
  525.     (
  526.         (set ci_dir "kmel")
  527.         (COPYIMAGEDIR)
  528.     ))
  529.  
  530.     (complete 80)
  531.  
  532.     (set ci_dir "Misc")
  533.     (COPYIMAGEDIR)
  534. )
  535. )
  536.  
  537.  
  538.  
  539. ;=============================================================================
  540. ; Rexx Drawer
  541.  
  542. (complete 84)
  543.  
  544. (if (<> (exists "/Rexx" (noreq)) 0)
  545. (
  546.     (copyfiles
  547.         (prompt "Installing example ARexx scripts...")
  548.         (source "/Rexx")
  549.         (dest (tackon destination "Rexx"))
  550.         (infos)
  551.         (all)
  552.         (help @copyfiles-help)
  553.     )
  554.     (run (cat "copy " "/Rexx.info \"" destination "\""))
  555. )
  556. )
  557.  
  558.  
  559. ;=============================================================================
  560. ; Catalogs
  561.  
  562. (complete 86)
  563.  
  564. (if (<> (exists "/Locale" (noreq)) 0)
  565. (
  566.     (copyfiles
  567.         (prompt "Installing catalogs...")
  568.         (source "/Locale")
  569.         (dest (tackon destination "Locale"))
  570.         (all)
  571.         (infos)
  572.         (help @copyfiles-help)
  573.     )
  574.     (run (cat "copy " "/Locale.info \"" destination "\""))
  575. )
  576. )
  577.  
  578.  
  579.  
  580. ;=============================================================================
  581. ; Presets
  582.  
  583. (complete 88)
  584.  
  585. (if (<> (exists "/Presets" (noreq)) 0)
  586. (
  587.     (copyfiles
  588.         (prompt "Installing presets...")
  589.         (source "/Presets")
  590.         (dest (tackon destination "Presets"))
  591.         (all)
  592.         (infos)
  593.         (help @copyfiles-help)
  594.     )
  595.     (run (cat "copy " "/Presets.info \"" destination "\""))
  596. )
  597. )
  598.  
  599.  
  600.  
  601. ;=============================================================================
  602. ; Presets
  603.  
  604. (complete 89)
  605.  
  606. (if (<> (exists "/Goodies" (noreq)) 0)
  607. (
  608.     (copyfiles
  609.         (prompt "Installing Goodies...")
  610.         (source "/Goodies")
  611.         (dest (tackon destination "Goodies"))
  612.         (all)
  613.         (infos)
  614.         (help @copyfiles-help)
  615.     )
  616.     (run (cat "copy " "/Goodies.info \"" destination "\""))
  617. )
  618. )
  619.  
  620.  
  621.  
  622. ;=============================================================================
  623. ; Patterns
  624.  
  625. (complete 90)
  626.  
  627. (if (<> (exists "/Patterns" (noreq)) 0)
  628. (
  629.     (copyfiles
  630.         (prompt "Installing patterns...")
  631.         (source "/Patterns")
  632.         (dest (tackon destination "Patterns"))
  633.         (all)
  634.         (infos)
  635.         (help @copyfiles-help)
  636.     )
  637.     (run (cat "copy " "/Patterns.info \"" destination "\""))
  638. )
  639. )
  640.  
  641.  
  642.  
  643. ;=============================================================================
  644. ; Demos
  645.  
  646. (complete 92)
  647.  
  648. (if (<> (exists "/Demos" (noreq)) 0)
  649. (
  650.     (copyfiles
  651.         (prompt "Installing demonstration programs...")
  652.         (source "/Demos")
  653.         (dest (tackon destination "Demos"))
  654.         (infos)
  655.         (all)
  656.         (help @copyfiles-help)
  657.     )
  658.     (run (cat "copy " "/Demos.info \"" destination "\""))
  659. )
  660. )
  661.  
  662.  
  663.  
  664. ;=============================================================================
  665. ; Startup Sequence
  666.  
  667. (complete 96)
  668.  
  669. (startup "MUI"
  670.     (prompt "Some commands will be added to your \"s:user-startup\" file.")
  671.     (help @startup-help)
  672.     (command "if exists \"" destination "\"\n")
  673.     (command "   assign MUI: \"" destination "\"\n")
  674.     (command "   if exists MUI:Libs\n")
  675.     (command "      assign add LIBS: MUI:Libs\n")
  676.     (command "   endif\n")
  677.     (command "   if exists MUI:Locale\n")
  678.     (command "      assign add LOCALE: MUI:Locale\n")
  679.     (command "   endif\n")
  680.     (command "   version >nil: exec.library 39\n")
  681.     (command "   if not warn\n")
  682.     (command "      if exists MUI:Docs\n")
  683.     (command "         if exists HELP:dummy ; do not remove\n")
  684.     (command "         endif                ; this entry!\n")
  685.     (command "         assign add HELP: MUI:Docs\n")
  686.     (command "      endif\n")
  687.     (command "   endif\n")
  688.     (command "endif")
  689. )
  690.  
  691.  
  692. ;=============================================================================
  693. ; Finish
  694.  
  695. (complete 99)
  696.  
  697. (run (cat "assign mui: " "\"" destination "\""))
  698.  
  699.  
  700. ;***** Finished
  701.  
  702. (complete 100)
  703.  
  704. (exit "Please reboot your computer before trying to start any MUI programs.")
  705.